このチュートリアルでは、C1Chart をプログラムでデータセットにバインドするための手順を説明します。データは、製品の名前を表す1本の y 軸と、各製品の単価を表す1本の x 軸を持つ単純な横棒グラフとして情報を表示します。最も高価な 10 種類の製品が降順で表示されます。横棒グラフでは、1つの系列を使用して単価を表示します。系列が1つしかないため、凡例は使用しません。
このグラフは、サンプルの Access データベース Nwind.mdb のデータを使用します。このクイックスタートでは、データベースファイル Nwind.mdb が C:\Users\<ユーザー名>\Documents\ComponentOne Samples\Common ディレクトリに置かれているものとし、このデータベースに言及する際は、簡潔にするため、フルパスではなくファイル名を使用します。
このチュートリアルを完了すると、グラフの表示は次のようになります。

Visual Studio で新しい WPF プロジェクトを作成します。
C1.WPF.C1Chart の参照をプロジェクトに追加します。
C1Chart コントロールをウィンドウに追加します。
C1Chart コントロールがウィンドウに配置されたら、次の XAML コードを追加します。
| XAML |
コードのコピー
|
|---|---|
Title="Window1" Height="300" Width="500" xmlns:c1chart="clr-namespace:C1.WPF.C1Chart;assembly=C1.WPF.C1Chart" Loaded="Window_Loaded"> <Grid> <c1chart:C1Chart Content="" Margin="10,10,10,18" Name="c1Chart1"> <c1chart:C1Chart.Data> <c1chart:ChartData> <c1chart:ChartData.ItemNames>P1 P2 P3 P4 P5</c1chart:ChartData.ItemNames> <c1chart:DataSeries Label="系列1" Values="20 22 19 24 25" /> <c1chart:DataSeries Label="系列2" Values="8 12 10 12 15" /> </c1chart:ChartData> </c1chart:C1Chart.Data> <c1chart:Legend DockPanel.Dock="Right" /> </c1chart:C1Chart> </Grid> |
|
「XAML」タブを選択して、次の名前空間を XAML コードに追加します。
| XAML |
コードのコピー
|
|---|---|
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
|
XAML コードで、タイトルの Width を「300」から「500」に変更します。
| XAML |
コードのコピー
|
|---|---|
<c1chart:C1Chart Margin="0" Name="c1Chart1" ChartType="Bar"> </c1chart:C1Chart> |
|
グラフは次のように表示されます。

c1chart:C1Chart の終了タグの後でラベルを作成して、そのテキストを「最も高価な 10 製品」とします。
| XAML |
コードのコピー
|
|---|---|
<TextBlock DockPanel.Dock="Top" Text="最も高価な 10 製品" HorizontalAlignment="Center"/> |
|
これで、XAML コードは次のようになるはずです。
| XAML |
コードのコピー
|
|---|---|
<Grid>
<c1chart:C1Chart Margin="0" Name="c1Chart1" ChartType="Bar" Height="185" VerticalAlignment="Top">
<c1chart:C1Chart.Data>
<c1chart:ChartData>
<c1chart:DataSeries Label="系列1" Values="20 22 19 24 25" />
<c1chart:DataSeries Label="系列2" Values="8 12 10 12 15" />
</c1chart:ChartData>
</c1chart:C1Chart.Data>
<c1chart:Legend DockPanel.Dock="Right" />
</c1chart:C1Chart>
<TextBlock DockPanel.Dock="Top" Text="最も高価な 10 製品" HorizontalAlignment="Center"/>
</Grid>>
|
|
次の using 指示文または imports 指示文を、コードビハインドファイルに追加します。
データセットの変数を Window_Loaded プロシージャの外部で宣言して、製品と単価をデータベースから取得するために次のコードを追加します。
| XAML |
コードのコピー
|
|---|---|
<c1chart:ChartData.ItemNames>P1 P2 P3 P4 P5</c1chart:ChartData.ItemNames>
<c1chart:DataSeries Label="系列1" Values="20 22 19 24 25" />
<c1chart:DataSeries Label="系列2" Values="8 12 10 12 15" />
|
|
これで、ウィンドウ上のC1Chart コントロールの表示は空になります。
<c1chart:C1Chart.Data> タグ内で、ItemNameBindingプロパティを ChartData に追加して要素(この場合は y 軸のラベル)の名前を指定し、ValueBindingプロパティを DataSeries に追加して系列の数値を指定します。
| XAML |
コードのコピー
|
|---|---|
<c1chart:ChartData ItemNameBinding="{Binding Path=[ProductName]}"> <c1chart:DataSeries ValueBinding="{Binding Path=[UnitPrice]}"/> </c1chart:ChartData> |
|
プロジェクトの XAML コードは、次のようになるはずです。
| XAML |
コードのコピー
|
|---|---|
<Window x:Class="Chart for WPF_QuickStart.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" Title="Window1" Height="300" Width="500" Loaded="Window_Loaded" xmlns:c1chart="clr-namespace:C1.WPF.C1Chart;assembly=C1.WPF.C1Chart"> <Grid> <c1chart:C1Chart Margin="0" Name="c1Chart1" ChartType="Bar"> <TextBlock DockPanel.Dock="Top" Text="最も高価な 10 製品" HorizontalAlignment="Center"/> <c1chart:C1Chart.Data> <c1chart:ChartData ItemNameBinding="{Binding Path=[ProductName]}"> <c1chart:DataSeries ValueBinding="{Binding Path=[UnitPrice]}"/> </c1chart:ChartData> </c1chart:C1Chart.Data> </c1chart:C1Chart> </Grid> </Window> |
|
<c1chart:Legend DockPanel.Dock="Right" /> タグを XAML から削除して、組み込みの Legend コントロールを削除します。
グラフに Products テーブルのデータが表示されます。
